const sequelize = require("./db");
const { DataTypes } = require("sequelize");

module.exports = sequelize.define(
  "userinfo",
  {
    id: {
      type: DataTypes.UUID,
      primaryKey: true,
      allowNull: false,
    },
    user: {
      type: DataTypes.STRING,
      allowNull: false,
    },
    passwd: {
      type: DataTypes.STRING,
      allowNull: false,
    },
    level: {
      type: DataTypes.INTEGER,
      allowNull: false,
    },
    name: {
      type: DataTypes.STRING,
    },
    tel: {
      type: DataTypes.STRING,
    },
    email: {
      type: DataTypes.STRING,
    },
    sign: {
      type: DataTypes.STRING,
    },
    sign_url: {
      type: DataTypes.TEXT("long"),
    },
    allow_sn: {
      type: DataTypes.TEXT("long"),
    },
    intelligent: {
      type: DataTypes.INTEGER,
    },
    currentToken:{
      type: DataTypes.STRING,
    }
  },
  {
    // paranoid: true,
    freezeTableName: true,
    indexes: [{ unique: true, fields: ["user"] }],
  }
);

//工程师 level:5、超级管理员level:1、管理员level:2、用户level:0 专家 level:6 对照医生:level:7 CRC:level:8

// 工程师：     1，无账号操作权限。（增删改）
//              2，仅能重置超级管理员密码；
//              3，其他角色不能看到工程师账号；
//              4，可以看到所有界面。
//               账号：engineer
//               默认密码： Cobot.71!50@

// 超级管理员： 1，添加、查看、修改、删除管理员/普通用户；
//              2，重置管理员/普通用户密码；
//              3，修改自己的信息；
//              4，可以看到目前所有界面。
//               账号：admin
//               默认密码：Corus@0125

// 管理员：     1，无权操作工程师及超级管理员；
//              2，无删除自己及其他管理员权限；
//              3，可修改个人信息；
//              4，添加、查看、修改、删除普通用户。

// 专家 

// 对照医生